1. Field of the Invention
This invention relates to storage systems and, more particularly, to device drivers for storage devices.
2. Description of the Related Art
Tape drives may be an economical backup device due to both the relatively low cost of tape drives and tape media and the relatively large media size available for use in tape drives. Tape may be a sequential storage medium typically made of a flexible plastic with a ferromagnetic coating. Tapes may come in reels or cartridges of varying sizes and shapes.
Tapes may have one or more tracks. These tracks may run parallel to the length of the tape (linear recording) or diagonally between the edges of the tape (helical scan). Modern cartridges often include 128 or more tracks. One or more tracks may be dedicated to storing parity for other tracks. Data is typically written in blocks of contiguous bytes to each track. Blocks are separated by spaces called inter-record or inter-block gaps. Locating a particular record involves sequentially reading records until the desired record is reached or searching for the inter-record gap in front of the desired record.
Due to the sequential nature of tape, many tape operations take a significant amount of time to perform. While tape speed, which may be measured in inches per second, continues to improve, tape length, measured in inches, also continues to increase. As a result, newer drives tend to perform some operations (e.g., I/O (Input/Output) operations) more quickly than their predecessors do and other operations (e.g., erase and space operations) more slowly than their predecessors do.
Some tape drivers specify either one or two timeout values to specify the amount of time the device driver should wait for a response from a tape drive. For example, one timeout may be used for I/O operations and may have a value equal to several minutes. Another timeout may be used for all other operations and may have a value around one hour. In order to accommodate the increasing amounts of time newer devices take to perform certain operations, tape drivers may include a multiplier flag or attribute. If the multiplier flag or attribute is set, one or both of the default timeout values are multiplied by a default multiplier. Accordingly, setting the flag or attribute causes the timeouts for all of the operations in a particular category to be lengthened. This may cause timeouts to be undesirably long for many tape drive operations. Accordingly, it is desirable to improve tape device timeout driver performance.